package cn.com.blueInfo.HaiYuan.business.payment.mapper;

import cn.com.blueInfo.HaiYuan.business.payment.entity.PaymentPurchase;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

/**
 * 付款单与采购单对应关系
 * @ClassName: PaymentPurchaseMapper
 * @tableName: tj_hai_payment_between
 * @author suxch
 * @date 2019年7月25日  上午8:53:35
 */
@Mapper
public interface PaymentPurchaseMapper extends BaseMapper<PaymentPurchase> {

    /**
     * 批量新增付款单对应信息
     * @Title: batchAddPaymentPurchaseInfo
     * @param paymentPurchaseList
     * @return int
     * @throws
     */
    int batchAddPaymentPurchaseInfo(List<PaymentPurchase> paymentPurchaseList);

    /**
     * 新增付款单对应信息
     * @Title: addPaymentPurchaseInfo
     * @param paymentPurchase
     * @return int
     * @throws
     */
    int addPaymentPurchaseInfo(PaymentPurchase paymentPurchase);

    /**
     * 批量删除付款单对应信息
     * @Title: batchDelPaymentPurchaseInfoByUnids
     * @param paymentPurchaseUnids
     * @return int
     * @throws
     */
    int batchDelPaymentPurchaseInfoByUnids(ArrayList<String> paymentPurchaseUnids);

    /**
     * 删除付款单对应信息
     * @Title: delPaymentPurchaseInfoByUnid
     * @param unid
     * @return int
     * @throws
     */
    int delPaymentPurchaseInfoByUnid(String unid);

    /**
     * 批量更新付款单对应信息
     * @Title: batchUpdatePaymentPurchaseInfoByUnid
     * @param paymentPurchaseList
     * @return int
     * @throws
     */
    int batchUpdatePaymentPurchaseInfoByUnid(List<PaymentPurchase> paymentPurchaseList);

    /**
     * 更新付款单对应信息
     * @Title: updatePaymentPurchaseInfoByUnid
     * @param paymentPurchase
     * @return int
     * @throws
     */
    int updatePaymentPurchaseInfoByUnid(PaymentPurchase paymentPurchase);

    /**
     * 分页查询付款单对应信息
     * @Title: queryPaymentPurchaseInfo
     * @param paramMap
     * @return List<PaymentPurchase>
     * @throws
     */
    List<PaymentPurchase> queryPaymentPurchaseInfo(Map<String, Object> paramMap);

    /**
     * 查询付款单对应信息
     * @Title: queryPaymentPurchaseInfo
     * @return List<PaymentPurchase>
     * @throws
     */
    List<PaymentPurchase> queryPaymentPurchaseInfo();

    /**
     * 条件查询付款单对应数量
     * @Title: queryPaymentPurchaseInfoCount
     * @param paramMap
     * @return Integer
     * @throws
     */
    Integer queryPaymentPurchaseInfoCount(Map<String, Object> paramMap);

    /**
     * 查询付款单对应数量
     * @Title: queryPaymentPurchaseInfoCount
     * @return Integer
     * @throws
     */
    Integer queryPaymentPurchaseInfoCount();
}
